﻿using System.Threading.Tasks;
using Abp.Application.Services;
using Abp.Application.Services.Dto;
using DHJ.Cost.Models.Dto;

namespace DHJ.Cost.Models
{
    public interface IModelAppService : IApplicationService
    {
        Task<PagedResultDto<ModelListDto>> GetModels(GetModelsInput input);

        Task<ListResultDto<ComboboxItemDto>> GetComboboxModels();

        Task<GetModelForEditOutput> GetModelForEdit(NullableIdDto input);

        Task CreateOrUpdateModel(ModelEditDto model);

        Task DeleteModel(EntityDto input);

        Task<PagedResultDto<LaunchListDto>> GetLaunches(GetLaunchesInput input);

        Task<GetLaunchForEditOutput> GetLaunchForEdit(NullableIdDto input);

        Task CreateOrUpdateLaunch(LaunchEditDto input);

        Task DeleteLaunch(EntityDto input);
    }
}
